草庐IT

vue2 jest

全部标签

javascript - 如何使用 Vue js 2 在组件子组件链上冒泡事件?

我的vue应用程序使用:由组件子组成的组件父组件在component-parent里面我有按钮,当有人点击一个按钮时我想发出一个事件以便由vue处理并传递给另一个组件到目前为止我做了什么:varvm=newVue({el:'#app',methods:{itemSelectedListener:function(item){console.log('itemSelectedListener',item);}}});Vue.component('component-child',{template:'Button',methods:{chooseItem:function(pty){co

javascript - 如何使用 Jest 和 Enzyme for React-Native 在单元测试中模拟事件

我正在尝试找出如何在React-Native应用程序中使用Jest测试“onPress”事件,以便确保调用正确的函数。我浏览了文档和谷歌,但无法在React-Native中找到解决方案。这是我发现应该适用于带有enzyme的React-Native的东西:constmockFunc=jest.fn();constcomponent=mount();component.simulate('press');expect(mockFunc).toHaveBeenCalled();但这行不通。似乎mount不起作用,我得到了这个输出:ReferenceError:documentisnotde

javascript - 构建 Vue + Vuex 项目

我对在哪里放置我的全局函数有点困惑。在很多例子中,一个main.js文件指向一个应用程序组件,它被放置在html中的某个地方。如果我只是将我的所有逻辑包含在这个应用程序组件中,这个工作流程对我来说就很好了。但是我将组件与Laravel功能结合在一起,所以这对我不起作用。目前我的main.js文件包含一堆我需要从我的应用程序中的任何地方访问的方法。这些方法不包含任何广播事件,因此只要它们获得vue-resource实例,它们就可以有效地放置在任何地方。我的main.js文件:https://github.com/stephan-v/BeerQuest/blob/develop/resou

javascript - 如何让我的测试在 Jest 中挂起?

我想让我的一些jest测试挂起。我该怎么做?APIreference没有任何方法可以让我的测试挂起。 最佳答案 你也可以只说test.todo('SometestIstillneededtodo')然后,测试运行器将在todo状态下显示测试计数:测试:1个待办事项,2个通过,总共3个 关于javascript-如何让我的测试在Jest中挂起?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/quest

javascript - 使用 jspdf 和 Vue.js 生成 pdf

我是Vue.js的新手,我正在尝试生成PDF,但我不知道该怎么做。这是我的:import*asjsPDFfrom"jspdf"exportdefault{props:['id'],methods:{pdf(){constdoc=newjsPDF()}}}错误:Propertyormethod"pdf"isnotdefinedontheinstancebutreferencedduringrender 最佳答案 首先将PDF库导入为:importjsPDFfrom'jspdf'然后简单地实例化对象并给它内容:methods:{crea

javascript - Jest 中的 XMLHttpRequest 测试

我想测试AJAX方法(vanillaXHR),但找不到使用Jest框架的方法。我为Jasmine找到了mock-ajax.js。问题是我找不到安装方法。在Jest中是否有更好的单元测试Ajax函数的方法? 最佳答案 jestapi发生了一些变化。这是我用的。它什么都不做,但足以呈现我的组件。constxhrMockClass=()=>({open:jest.fn(),send:jest.fn(),setRequestHeader:jest.fn()})window.XMLHttpRequest=jest.fn().mockImple

javascript - 在 Jest 中 stub 窗口函数

在我的代码中,我在点击window.confirm提示“确定”时触发回调,我想测试是否触发了回调。在sinon中,我可以通过以下方式stubwindow.confirm函数:constconfirmStub=sinon.stub(window,'confirm');confirmStub.returns(true);有没有办法在Jest中实现这种stub? 最佳答案 开个Jest,您可以使用global覆盖它们。global.confirm=()=>true开个Jest,每个测试文件都在自己的进程中运行,您不必重置设置。

javascript - 在使用 react-test-renderer 的 Jest 快照测试中,Refs 为空

目前我正在componentDidMount上手动初始化Quill编辑器,Jest测试对我来说失败了。看起来我得到的ref值在jsdom中是空的。这里有问题:https://github.com/facebook/react/issues/7371但看起来refs应该有效。有什么我应该检查的想法吗?组件:importReact,{Component}from'react';importlogofrom'./logo.svg';import'./App.css';classAppextendsComponent{componentDidMount(){console.log(this._

javascript - 如何使用 Jest 和 jsdom 来测试 console.log?

我刚刚开始使用Jest,并且已经成功编写了测试DOM的单元测试。我有一个library在屏幕上输入内容,所以我可以很好地进行测试。在某些情况下,我的库不会抛出错误,而是吐出console.warn或console.log。是否可以使用Jest来测试这些控制台消息是否正在发生? 最佳答案 您可以像这样通过spy设置console.log:global.console={warn:jest.fn(),log:jest.fn()}//runyourcodeexpect(global.console.log).toHaveBeenCalle

vue触屏项目 使用 虚拟键盘组件,通过js给el-input value赋值,v-model绑定值不同步问题(已修改)

1.管理后台项目每个页面都有模糊搜索,之前是使用外接键盘或者扫码枪进行输入,完全没有问题,但是最近客户使用的是触屏手动输入,就发现了问题,输入框上的值并不会被监听到,也不会触发el-input框自带的enter,以及change事件,这时候就想着接入一个虚拟键盘,在触屏项目中使用,接入完成后本以为可以成功,但是发现,通过js给el-inputvalue赋值,v-model绑定值不会同步问题:.赋值后,界面显示字段已更改,获取v-model的参数,发现不会同步更改解决办法:v-model只是一种语法糖,底层的方法还是去监听input事件。所以可以使用dispatchEvent事件给元素分配一个i